Skip to content

Fix Verglas destroyed Ice Crystal damage gain#2390

Open
xiaoyaoyang wants to merge 4 commits into
PathOfBuildingCommunity:devfrom
xiaoyaoyang:fix/verglas-destroyed-crystal-buff
Open

Fix Verglas destroyed Ice Crystal damage gain#2390
xiaoyaoyang wants to merge 4 commits into
PathOfBuildingCommunity:devfrom
xiaoyaoyang:fix/verglas-destroyed-crystal-buff

Conversation

@xiaoyaoyang

@xiaoyaoyang xiaoyaoyang commented Jul 22, 2026

Copy link
Copy Markdown

Fixes #2389.

Description of the problem being solved:

Verglas exports its 1% Damage gained as extra Cold per 2,000 maximum Life of the destroyed Ice Crystal and its 6-second duration, but SupportVerglasPlayer had no stat mapping. As a result, linking or disabling Verglas produced identical per-skill and Full DPS values.

This adds:

  • A local DamageGainAsCold modifier for skills actually supported by Verglas.
  • A default-off configuration for destroying an Ice Crystal in the past 6 seconds.
  • Automatic maximum-Life detection from enabled Ice Crystal skills in the build, using the highest calculated value.
  • An optional Life override for a different crystal source or a specific lower-Life crystal.
  • Full-DPS cache invalidation when the resolved cross-skill Ice Crystal Life changes.
  • Display-only handling for the exported buff duration.

The modifier uses the existing Multiplier tag with div = 2000, which floors to complete 2,000-Life increments. It is intentionally not a GlobalEffect, since Verglas only applies to supported skills.

The automatic value is shown as the input placeholder. Leaving the field empty uses that value; entering a positive value takes explicit precedence. The checkbox remains default-off because having an Ice Crystal skill does not imply that the player destroyed a crystal within the past 6 seconds.

Steps taken to verify a working solution:

  • Focused Verglas regression: 1/1 passed.
  • Complete TestSkills_spec.lua: 61/61 passed with 0 failures and 0 errors.
  • Complete TestFullDPSCache_spec.lua: 8/8 passed with 0 failures and 0 errors.
  • Regression covers the disabled condition, automatic Life and placeholder, manual override precedence, 2,000 / 3,999 / 4,000 Life breakpoints, 271,990 Life producing 135%, linked-versus-unlinked skill scope, selecting a higher-Life Ice Crystal source, cross-skill Full-DPS cache invalidation, and Full DPS returning to baseline when the condition is disabled.
  • Affected build on this PR alone: automatic Frost Wall Life 30,908 and 26,087,034.64 Full DPS. The separate Frost Wall quality mapping fix in Fix Gemling Frost Wall Ice Crystal life #2386 is required for Advanced Thaumaturgy's additional quality to affect that Life.
  • Affected build with Fix Gemling Frost Wall Ice Crystal life #2386 and this PR combined: automatic Frost Wall Life 271,990.4 and 47,163,971.67 Full DPS, matching the prior 135% gained-as-Cold proxy.
  • Lua syntax checks and git diff --check passed.

Link to a build that showcases this PR:

https://pobb.in/CI4hChFipObn

Before screenshot:

Verglas enabled or disabled: 23,452,423.18 Full DPS.

After screenshot:

With "Ice Crystal destroyed (past 6s)?" enabled and the Life override left empty, Verglas uses the highest calculated Life from enabled Ice Crystal skills. With #2386 also applied, this build resolves 271,990.4 Life and 47,163,971.67 Full DPS.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Verglas does not apply damage gained from destroyed Ice Crystal Life

1 participant